
package com.tencent.weibo.operation
{
	import flash.events.IEventDispatcher;
	
	/**
	 * 请求操作的接口定义。
	 * 实现这个接口的类，将封装对网络的请求操作（比如基于URLLoader），用户不必关心调用的细节，只需将必要的参数传入即可。
	 * 同时实现这个接口的类将具备派发事件的能力，主要是这3个事件：
	 * <ul>
	 * <li>Event.COMPLETE</li>
	 * <li>ProgressEvent.PROGRESS</li>
	 * <li>IOErrorEvent.IO_ERROR</li>
	 * </ul>
	 * 数据请求和返回是异步的，您可以通过侦听事件，来确定数据请求的状态。
	 * @langversion 3.0
	 * @playerversion Flash 9
	 * @playerversion AIR 1.1
	 */	
	public interface IRequestOperation extends IEventDispatcher
	{
		/**
		 * 当捕获到COMPLETE事件后，您可以访问data属性来得到返回的数据
		 * @return 数据对象
		 */		
		function get data():Object;
		/**
		 * 执行网络请求的对象，比如一个URLLoader
		 * @return service对象
		 */		
		function get service():Object;
		function set service(value:Object):void;
		/**
		 * 重新发送请求
		 */		
		function repeat():void;
	}
}